This invention relates to modulation systems for sending digital data via a channel.
In a quadrature amplitude modulation (QAM) system, for example, two key parameters are the baud rate 1/T and the number of bits per baud .beta.. The bit rate R of the QAM system is given by R=.beta./T, measured in bits per second (b/s).
Transmission equipment, such as a voiceband modem, operates at one of a number of possible bit rates (e.g., in the range 9.6 to 19.2 kb/s) depending on the line quality or the user's requirement. Therefore, for a given baud rate such a modem must be able to operate at different values of .beta., which may be a fraction, and the different values of .beta. may not differ simply by integers. For example, if the baud rate is 2743 symbols/s, then to send at conventional modem rates of 19.2, 16.8, and 14.4 kb/s requires .beta.=7, 6.125 and 5.25, respectively.
When .beta. is a rational number of the form .beta.=n+d/2.sup.m, where n and 0.ltoreq.d&lt;2.sup.m are integers, a higher-dimensional (higher than two-dimensional) QAM constellation of dimension L=2.sup.m+1 with 2.sup..beta.L/2 points can be used to represent .beta.L/2 bits over L dimensions. Higher-dimensional constellations save in average power when their signal points are chosen to lie within hyperspheres instead of hypercubes. This saving, called shaping gain, can be as high as 1.53 dB.
Because the size of the signal constellation increases rapidly with n and m, mapping from bits to signal points can be cumbersome. For example, in an uncoded system (one in which there is no interdependence between selected signal points), to send 7.5 bits/baud, a four-dimensional constellation with 2.sup.15 =32,768 points is needed, which may be too large to handle. However, such a 4D constellation can be formed by the Cartesian product of simple 128-point and 256-point two-dimensional constellations. More generally, a simple way of sending .beta.=n+d/2.sup.m bits per two-dimensions is to define a series of frames each encompassing the bits in a group of 2.sup.m bauds and then for each frame send n bits/baud for (2.sup.m -d) bauds and send (n+1) bits/baud for d bauds. The average power per two-dimensions for this scheme is approximately P.sub..beta. =P.sub.n (1+d/2.sup.m), where P.sub.n is the average power of a 2.sup.n -point two-dimensional (2D) QAM constellation (The 2D constellations are scaled to have the same minimum distance between adjacent points.). This approach is approximately as efficient as a conventional QAM system sending an integer number of bits/baud. However, the imbalance in size between the two 2D constituent constellations creates a large peak-to-average ratio (PAR) in two-dimensions, making the system susceptible to other impairments such as nonlinear distortion or phase jitter.
Generalized cross-constellations, described by Forney and Wei, "Multidimensional Constellations--Part I: Introduction, Figures of Merit, and Generalized Cross Constellations," IEEE JSAC, pp 877-892, August, 1989, offer an alternative way of generating higher-dimensional constellations to represent fractional bits/baud. Here, the higher-dimensional constellation is a subset of the signal points in a Cartesian product of identical expanded two-dimensional constellations; simple coding rules are used to construct the subset. A generalized cross-constellation has a low 2D constellation expansion ratio (CER) and a low PAR in two-dimensions; however, it also generally has a low shaping gain.
Higher-dimensional constellations with simplified bit mapping and with significant shaping gain can be constructed using the Voronoi region of a lattice .LAMBDA.' as the boundary of the signal point set, Forney, "Multidimensional Constellations--Part II: Voronoi Constellations," IEEE JSAC, pp 877-892, August, 1989. If signal points are chosen from some lattice .LAMBDA., then .LAMBDA. and .LAMBDA.' must be scaled such that the Voronoi region of .LAMBDA. contains 2.sup..beta.L/2 points from .LAMBDA.; that means the order .vertline..LAMBDA./.LAMBDA.'.vertline. of the lattice partition .LAMBDA./.LAMBDA.' must be 2.sup..beta.L/2. The mapping of bits to signal points involves a decoding operation whose complexity is that of a minimum-distance decoder for .LAMBDA.'. The inverse mapping is accomplished by a simple hard-decision decoding operation. A Voronoi constellation generally is more complex to generate than a generalized cross constellation. For given lattices .LAMBDA. and .LAMBDA.', the Voronoi constellation can typically support only certain fractional values of .beta., and that by using different versions of .LAMBDA.'.
An important expansion of the Voronoi constellation technique is trellis shaping disclosed in U.S. patent application Ser. No. 312,254, filed Feb. 16, 1989, assigned to the same assignee as this application, and incorporated herein by reference. In trellis shaping, the signal constellation is constructed on a sequence basis rather than on a block basis. Instead of the Voronoi region of a lattice, the decision regions associated with trellis codes are used to form the signal constellation boundary. In analogy to Voronoi constellations, in trellis shaping the mapping from bits to signal points involves a decoder for the trellis code. Trellis shaping offers a better performance/complexity trade-off than Voronoi constellations; but, it also can support only certain fractional values of .beta..
An extension of Voronoi constellations and trellis shaping to non-ideal channels with linear distortion or correlated noise has been disclosed in U.S. Pat. No. 5,048,054, assigned to the same assignee as this invention, and incorporated by reference. This extension, called lattice or trellis precoding, provides the performance of ideal decision feedback equalization (DFE), preserves the coding gain of known coded modulation schemes designed for ideal channels, and, in addition, provides shaping gain. Trellis precoding is similar to trellis shaping, however, it involves a decoder for a filtered trellis code rather than for the ordinary trellis code. Trellis precoding is a practically important scheme, but, like trellis shaping, is limited in the fractional values of .beta. that it can support.